home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
EnigmA Amiga Run 1996 February
/
EnigmA AMIGA RUN 04 (1996)(G.R. Edizioni)(IT)[!][issue 1996-02][Skylink CD III].iso
/
earcd
/
util1
/
pchwpa8.lha
/
PatchWPA8.doc
< prev
next >
Wrap
Text File
|
1995-08-24
|
3KB
|
106 lines
DESCRIPTION:
PatchWPA8 replaces WritePixelArray8() and WritePixelLine8() functions
of graphics.library with a highly optimised chunky-to-plannar
routines. In most cases on 8bit screen it gives acceleration up to
3.5 times.
REQUIREMENTS:
OS3.0+ (temporary bitmap is allocated via AllocBitMap)
CPU 68020 or better
NOTE: Don't use it with gfx boards!
BENCHMARKS:
Original Patched
Converting 640x480x8 screen 10 times:
PAL:Hires Laced 22.23s 7.16s (1) (3.1x faster)
DBLPAL:Hires NoFlicker 43.68s 12.10s (3.6x faster)
Real applications:
VT - JPEG 640x480x24 42.03s 38.12s
VT - JPEG 640x480x8 13.03s 9.23s
Flick opt ROM 2.8fps 4.2fps (2)
CyberShow and CyberTVPlayer are faster about 2-2.5 times (visually)
All times are measured by SpySystem3 on 68030@25Mhz.
Testing program with a source is included in this archive.
(1) Yes! It's true :( Write access to Chip memory is almost 3 times
slower in doublescan modes (8bit) than in 15kHz PAL or NTSC so WPA8
and WPL8 are slower, too.
(2) It's done just for a test so DON'T use ROM option anymore because
Flick has own very fast (state of the art) c2p routines.
NOTE: Many programs (f.e. FastJPEG, FastView) use own fast c2p
routines with direct access to screen (system unfriendly but faster)
so this patch will not speed up anything.
USAGE:
PatchWPA8 can be started ONLY from CLI. It works like a switch.
No arguments are supported.
AUTHOR:
PatchWPA8 was developed in Devpac assembler on A4030/882/10MB/850MB/CDROM.
C2P routines are based on several sources in Aminet and highly changed
by me for system usage. All comments or bug reports send to:
Pawel Hernik
Nowowiejska 24/3
25-532 Kielce
POLAND
tel. (041)27012
E-mail: spi-ph@srv1.tu.kielce.pl
DISTRIBUTION:
PatchWPA8 is FREEWARE. You may use and copy this program freely but
all files must be copied in an unmodified state preferably in LhA
or LZX archive. Use it on your own risk. If you use PatchWPA8 send
me a postcard or message via e-mail.
BUGS:
- I can't write directly into RastPort's BitMap (it is system
unfriendly!) so data is blitted via BltBitMapRastPort. In original
function (by Commodore) c2p routine took ~80% of all time but now it's
only ~30% and slow blitter is real bottle neck :( If anyone has idea
how to do it system friendly but without using blitter let me know
about it. Direct write to BitMaps gives acceleration over 8 times (!).
- Patched routine doesn't damage source chunky in A2 (Is it really a
bug? :) )
- Patch ignores TmpRastPort in A1 and own bitmap is used (because I need
8bit interleaved bitmap aligned to 32bit). It makes problems when
some tasks use WPA8 and/or WPL8 simultaneously. I used very primitive
semaphore mechanism to avoid conflicts - it isn't system friendly but
WORKS!
- Chunky data must have less than 2048 pixels/line (look above)
- Only 8bit c2p is optimised but it works well for 7bit and less but
acceleration isn't as big as in 8bit. It's still faster than original
routines.
HISTORY:
1.0 - first release